package com.huabo.contract.mysql.entity;

import java.math.BigDecimal;

import com.alibaba.fastjson.annotation.JSONField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.Date;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Transient;

/**
 * <p>
 * 
 * </p>
 *
 * @author huabo
 * @since 2022-03-21
 */
@Data
  @EqualsAndHashCode(callSuper = false)
    @TableName("TBL_LEGAL_PROCEEDINGSRECORD")
@ApiModel(value="TblLegalProceedingsrecord对象", description="")
public class TblLegalProceedingsrecordMySql implements Serializable {
//法务管理-诉讼过程-新建-诉讼过程记录-列表
    private static final long serialVersionUID = 1L;

      @TableId("PROCEEDID")
      @Id
      @GeneratedValue(strategy = GenerationType.IDENTITY,generator = "select HIBERNATE_SEQUENCE.nextval from dual")
      private Integer proceedid;

    @TableField("PROCEEDNO")//案号
    private String proceedno;

    @TableField("PORCEEDSTAGE")//诉讼阶段
    private String porceedstage;

    @TableField("COURT")//审理法院
    private String court;

    @TableField("COURTLINK")//法院联系人
    private String courtlink;

    @TableField("COURTCONTACT")//法院联系方式
    private String courtcontact;

    @TableField("FILINGTIME")
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date filingtime;

    @TableField("PAYMENTREMINDTIME")
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date paymentremindtime;//缴费提醒时间

    @TableField("OPENINGTIME")
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date openingtime;//开庭时间：

    @TableField("JUDGETIEM")
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date judgetiem;

    @TableField("ISEXTERNALLAWYER")
    private BigDecimal isexternallawyer;//是否聘请外师：1是，2否

    @TableField("LAWYEARWORD")
    private String lawyearword;//律所

    @TableField("LAWYEARNAME")//律所
    private String lawyearname;

    @TableField("LAWYEARLINK")//律师联系方式
    private String lawyearlink;

    @TableField("LITIGATIONINFO")
    private BigDecimal litigationinfo;

    @TableField("CREATESTAFF")
    private BigDecimal createstaff;

    @TableField("CREATETIME")//录入时间
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    private Date createtime;

    @TableField("LINKORG")
    private BigDecimal linkorg;

    @TableField("NEGOTIATOR")
    private String negotiator;//代理人

    @TableField("NEGOTIATORLINK")
    private String negotiatorlink;//代理人联系方式

    @TableField("PRESEDINGJUDGE")
    private String presedingjudge;

    @TableField("CASEPROMOTION")//发现的问题
    private String casepromotion;

    @TableField("EXISTINGDIFFICULTIES")
    private String existingdifficulties;//存在的困难

    @TableField("MEASURESPROMOTE")//推进的措施
    private String measurespromote;


    @Transient//TblStaff
    private String username;//用户名（登录名）录入人
    @Transient
    private BigDecimal staffid;//主键ID,自动增长
    @Transient
    private String realname;//真实名字
    @Transient
    private String fixedphone;//固定电话
    @Transient
    private String address;//地址
    @Transient
    private String email;//邮箱
    @Transient
    private String miblephone;//手机号码
    @Transient
    private String memo;//备注
    @Transient
    private String password;//密码
    @Transient
    private BigDecimal jobid;//岗位ID
    @Transient
    private Integer status;//状态（1启用，0弃用）
    @Transient
    private TblRoleMySql  trole;
    @Transient
    private Integer outSideId; //标识用户来源 为null是本系统，1：蜂信，2,蜂信购买后的用户   3：华博云系统注册用户管理员  以后可能为2,3...来表示其它来源
    @Transient
    private String outSideOpenId; //外部同步企业来源Id

    //TblOrganization
    @Transient
    private BigDecimal orgid;

    @Transient
    @ApiModelProperty(value = "公司名称")
    private String orgname;

    @Transient
    private BigDecimal fatherorgid;

    @Transient
    @ApiModelProperty(value = "公司编号")
    private String orgnumber;

    @Transient
    @ApiModelProperty(value = "公司简介")
    private String orgmeno;


    @Transient
    private String icode;

    @Transient
    private Integer orgtype;

    @Transient
    private Integer auditType;


    @Transient
    private String iszy;

    @Transient
    private String hyzsktype;

    @Transient
    private Integer orderid;

    @Transient
    private Integer outsideid;

    @Transient
    private String outsideopendid;

    @ApiModelProperty(value = "是否使用自动编号 0 不使用；1 使用")
    @Transient
    private Integer isautonumber;

    @Transient
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date orgcreate;

    @Transient
    private Integer isinitialization;

    @ApiModelProperty(value = "职务")
    @Transient
    private String duties;

    @ApiModelProperty(value = "行业编号")
    @Transient
    private Integer industryid;

    @ApiModelProperty(value = "新增来源于微信 1为微信 0为pc")
    @Transient
    private String bywx;

    @Transient
    private String datasource;

    @Transient
    private String historycode;

    @Transient
    private String historydepartmentid;


    @Transient
    private Integer litigationid;

    @Transient//案件名称。必填
    private String firstcourt;

    @Transient//审判长
    private String presidingjudge;

    @Transient//合议庭组成
    private String collegialpanel;

    @Transient//诉讼金额
    private BigDecimal litigationamount;

    @Transient//诉讼受理日期
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date dealdate;

    @Transient
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date firsthearingdate;

    @Transient
    @JSONField(format = "yyyy-MM-dd")
    @DateTimeFormat(pattern="yyyy-MM-dd")
    private Date litigationenddate;

    @Transient//谈判结果
    private String litigationresult;

    @Transient
    private BigDecimal litistatus;

    @Transient//诉讼标的物
    private String actionobject;

    @Transient//判决是否生效：1是，2否
    private BigDecimal iseffect;

    @Transient//判决金额
    private BigDecimal judgemoney;

    @Transient
    private BigDecimal disputeinfo;

//TblLegalDisputregistration

    @Transient
    private Integer disputeid;
    @Transient
    private String disputeno;//登记编号
    @Transient
    private BigDecimal disputestatus;
    @Transient//纠纷类型
    private String disputetype;
    @Transient
    private BigDecimal contractinfo;
    @Transient//争议焦点
    private String disputecours;
    @Transient//是否紧急：1是，其他否
    private BigDecimal isuegent;
    @Transient//起诉类型：1起诉，其他被诉
    private BigDecimal whethersued;
    @Transient
    private BigDecimal disputeundertaker;
    @Transient//办结时间
    @JSONField(format = "yyyy-MM-dd")
    private Date lastdealdate;
    @Transient
    private String solutionsuggestions;//初步解决建议
    @Transient//原告
    private String plaintiff;
    @Transient//被告
    private String defendant;//录入人
    @Transient//代理律师
    private String attorney;
    @Transient//代理律师联系电话
    private String attorneyphont;
    @Transient
    private BigDecimal dispuinfo;
    @Transient
    private String disputeitem;//纠纷主题
    @Transient//是否聘请律师：1是，2否
    private BigDecimal isattorney;

    @ApiModelProperty(value = "贵安配合人员")
    @Transient
    private String coordination;

    @ApiModelProperty(value = "贵安纠纷登记-案由")
    @Transient
    private String casecause;

    @ApiModelProperty(value = "贵安纠纷登记-涉诉项目")
    @Transient
    private String ssproject;

    @ApiModelProperty(value = "贵安纠纷登记-管辖法院（仲裁机构）")
    @Transient
    private String courtfirst;
    @ApiModelProperty(value = "贵安纠纷登记-发生时间")
    @Transient
    private LocalDateTime occurrencetime;

    @ApiModelProperty(value = "贵安纠纷登记-涉及子公司")
    @Transient
    private String subsidiaries;
}
